package org.sws.domain.activity.model.aggregate;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.sws.domain.activity.model.entity.ActivityAccountDayEntity;
import org.sws.domain.activity.model.entity.ActivityAccountEntity;
import org.sws.domain.activity.model.entity.ActivityAccountMonthEntity;
import org.sws.domain.activity.model.entity.UserRaffleOrderEntity;

/**
 * @Author sws
 * @Date 2025/3/21 09:57
 * @description: 用户活动抽奖单聚合对象
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class CreatePartakeOrderAggregate {
    /**
     * 用户ID
     */
    private String userId;

    /**
     * 活动ID
     */
    private Long activityId;
    /**
     * 总额度账户
     */
    private ActivityAccountEntity activityAccountEntity;
    /**
     * 是否存在月账户
     */
    private boolean isExistAccountMonth = true;
    /**
     * 月额度账户
     */
    private ActivityAccountMonthEntity activityAccountMonthEntity;
    /**
     * 是否存在日账户
     */
    private boolean isExistAccountDay = true;
    /**
     * 日额度账户
     */
    private ActivityAccountDayEntity activityAccountDayEntity;
    /**
     * 抽奖单
     */
    private UserRaffleOrderEntity userRaffleOrderEntity;
}
